#ifndef VIEWSPLIT_H
#define VIEWSPLIT_H


#include <QTabWidget>
#include <functional>
#include <core/global.h>

class QToolButton;
class QMenu;
class QActionGroup;

namespace stitch
{
class ViewWindow;
 struct ViewWorkspace;
class ViewSplit : public QTabWidget
{
    Q_OBJECT
public:
    struct ViewWindowNavigationModeInfo
    {
        // Top left position of the ViewWindow relative to the view split.
        QPoint m_topLeft;

        ViewWindow *m_viewWindow = nullptr;
    };
    ViewSplit(const QVector<QSharedPointer<ViewWorkspace>> &p_allWorkspaces,
              const QSharedPointer<ViewWorkspace> &p_workspace,
              ID p_id,
              QWidget *p_parent = nullptr);

    ~ViewSplit();
private:
    ID m_id = 0;
    const QVector<QSharedPointer<ViewWorkspace>> &m_allWorkspaces;

    QSharedPointer<ViewWorkspace> m_workspace;
};
} //

#endif // VIEWSPLIT_H
